Next | Prev | Up | Top | Contents | Index

User-Level Device Control

In IRIX terminology, a user-level process is one that is initiated by a user (possibly the superuser). A user-level process runs in an address space of its own, with no access to the address space of other processes or to the kernel's address space, except through explicit memory-sharing agreements.

In particular, a user-level process has no access to physical memory (which includes access to device registers) unless the kernel allows the process to share part of the kernel's address space. (For more on physical memory, see Chapter 1, "Physical and Virtual Memory.")

There are several ways in which a user-level process can control devices, which are summarized in the following topics:


EISA Mapping Support
VME Mapping Support
User-Level DMA From the VME Bus
User-Level Control of SCSI Devices
Managing External Interrupts
User-Level Interrupt Management
Memory-Mapped Access to Serial Ports

Next | Prev | Up | Top | Contents | Index